#include <stdio.h>

void swap(int A[], int a, int b) {
  int t = A[a];
  A[a] = A[b];
  A[b] = t;
}

void quicksort(int A[], int n) {
  if(n<=1) return;
  int pivotIndex = 0;
  int pivot = A[0];
  int l=0, r=n;
  while(l<r) {
    while(l<r && pivot<A[--r]);
    while(l<r && A[++l]<pivot);
    swap(A, l, r);
  }
  swap(A, pivotIndex, l);
  quicksort(A, l);
  quicksort(A+l+1, n-l-1);
}

void show(int A[], int n) {
  for(int i=0; i<n; ++i) {
    printf("%d ", A[i]);
  }
  printf("\n");
}

int tc[20000];

int main() {
  int cnt = 0;
  int num = 0;
  while(scanf("%d", &num)==1 && cnt<20000) {
    tc[cnt] = num;
    cnt++;
  }

  show(tc, cnt);

  quicksort(tc, cnt);

  show(tc, cnt);
}
